home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / ldapjdk.jar / netscape / ldap / LDAPReferralException.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-13  |  1.5 KB  |  81 lines

  1. package netscape.ldap;
  2.  
  3. import java.util.StringTokenizer;
  4. import java.util.Vector;
  5.  
  6. public class LDAPReferralException extends LDAPException {
  7.    private String[] m_referrals;
  8.  
  9.    public LDAPReferralException() {
  10.    }
  11.  
  12.    public LDAPReferralException(String var1) {
  13.       super(var1);
  14.    }
  15.  
  16.    public LDAPReferralException(String var1, int var2, String var3) {
  17.       super(var1, var2, var3);
  18.    }
  19.  
  20.    public LDAPReferralException(String var1, int var2, String[] var3) {
  21.       super(var1, var2, (String)null);
  22.       this.m_referrals = var3;
  23.    }
  24.  
  25.    public LDAPUrl[] getURLs() {
  26.       return ((LDAPException)this).getLDAPErrorMessage() == null ? this.constructsURL(this.m_referrals) : this.constructsURL(this.extractReferrals(((LDAPException)this).getLDAPErrorMessage()));
  27.    }
  28.  
  29.    private LDAPUrl[] constructsURL(String[] var1) {
  30.       if (var1 == null) {
  31.          return null;
  32.       } else {
  33.          LDAPUrl[] var2 = new LDAPUrl[var1.length];
  34.          if (var2 == null) {
  35.             return null;
  36.          } else {
  37.             for(int var3 = 0; var3 < var1.length; ++var3) {
  38.                try {
  39.                   var2[var3] = new LDAPUrl(var1[var3]);
  40.                } catch (Exception var4) {
  41.                   return null;
  42.                }
  43.             }
  44.  
  45.             return var2;
  46.          }
  47.       }
  48.    }
  49.  
  50.    private String[] extractReferrals(String var1) {
  51.       if (var1 == null) {
  52.          return null;
  53.       } else {
  54.          StringTokenizer var2 = new StringTokenizer(var1, "\n");
  55.          Vector var3 = new Vector();
  56.          boolean var4 = false;
  57.  
  58.          while(var2.hasMoreTokens()) {
  59.             String var5 = var2.nextToken();
  60.             if (var4) {
  61.                var3.addElement(var5);
  62.             } else if (var5.startsWith("Referral:")) {
  63.                var4 = true;
  64.             }
  65.          }
  66.  
  67.          if (var3.size() == 0) {
  68.             return null;
  69.          } else {
  70.             String[] var7 = new String[var3.size()];
  71.  
  72.             for(int var6 = 0; var6 < var3.size(); ++var6) {
  73.                var7[var6] = (String)var3.elementAt(var6);
  74.             }
  75.  
  76.             return var7;
  77.          }
  78.       }
  79.    }
  80. }
  81.